convolve Function

public pure function convolve(x, y, method) result(rst)

Computes the convolution of a signal and kernel.

Arguments

Type IntentOptional Attributes Name
real(kind=real64), intent(in) :: x(:)

The N-element signal.

real(kind=real64), intent(in) :: y(:)

The M-element kernel.

integer(kind=int32), intent(in), optional :: method

An optional input that dictates the expected convolution result. The following options are available.

  • SPCTRM_FULL_CONVOLUTION: The full convolution results are provided, including the portions polluted courtesy of the zero-padding and the corresponding wrap-around effects. The length of this output is N + M - 1.

SPCTRM_CENTRAL_CONVOLUTION: The N-element result containing the convolved signal not poluted by the zero-padding and corresponding wrap-around effects.

Return Value real(kind=real64), allocatable, (:)

The convolved result.